/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package model;

import java.util.ArrayList;

/**
 *
 * @author SONY
 */
public class ShoppingCart {

    ArrayList<ItemCart> lstItemCart = new ArrayList<ItemCart>();

    public ArrayList<ItemCart> getAllItemCart() {
        return lstItemCart;
    }
    
    public int getQuantityItemCart() {
        return lstItemCart.size();
    }
    
    public void addItemCart(ItemCart itemCart) {
        int index = -1;
        for (int i = 0; i < getQuantityItemCart(); i++)
        {
            //ktra neu user chon mua sp ma da co trong gio hang
            if(lstItemCart.get(i).getProductID().equals(itemCart.getProductID())) {
                index = i;
                int qty = lstItemCart.get(i).getQuantity() + itemCart.getQuantity();
                lstItemCart.get(i).setQuantity(qty);
                double totalline = lstItemCart.get(i).getQuantity() * lstItemCart.get(i).getUnitPrice();
                lstItemCart.get(i).setTotalLine(totalline);
                break;
            }
        }
        if (index == -1)
        {
            lstItemCart.add(itemCart);
        }
    }
    
    public double TotalPrice()
    {
        double total = 0;

        for(int i = 0; i < lstItemCart.size(); i++) {
            total += lstItemCart.get(i).getQuantity() * lstItemCart.get(i).getUnitPrice();
        }

        return total;
    }
    
    public void makeEmpty() {
        lstItemCart.clear();
    }
    
    public void deleteItemCart(String pid)
    {
        for (int i = 0; i < getQuantityItemCart(); i++)
        {
            if (lstItemCart.get(i).getProductID().equals(pid))
            {
                ItemCart remove = lstItemCart.remove(i);
                break;
            }
        }        
    }
    
    public void updateItemCart(String pid, int qty)
    {
        for (int i = 0; i < getQuantityItemCart(); i++)
        {
            if (lstItemCart.get(i).getProductID().equals(pid))
            {
                lstItemCart.get(i).setQuantity(qty);
                double totalline = lstItemCart.get(i).getQuantity() * lstItemCart.get(i).getUnitPrice();
                lstItemCart.get(i).setTotalLine(totalline);
                break;
            }
        }
     }    
}
